import request from '@/utils/request'

// 查询充电站信息列表
export function listStation(query) {
  return request({
    url: '/system/station/list',
    method: 'get',
    params: query
  })
}

// 查询充电站信息详细
export function getStation(csId) {
  return request({
    url: '/system/station/' + csId,
    method: 'get'
  })
}

// 新增充电站信息
export function addStation(data) {
  return request({
    url: '/system/station',
    method: 'post',
    data: data
  })
}

// 修改充电站信息
export function updateStation(data) {
  return request({
    url: '/system/station',
    method: 'put',
    data: data
  })
}

// 删除充电站信息
export function delStation(csId) {
  return request({
    url: '/system/station/' + csId,
    method: 'delete'
  })
}

// 查询今日每个站充电度数
export function selectTodayStationCharge() {
  return request({
    url: '/system/station/selectTodayStationCharge',
    method: 'get'
  })
}

// 查询充电站信息列表2
export function listStation2(query) {
  return request({
    url: '/system/station/list2',
    method: 'get',
    params: query
  })
}

// 查询充电站信息列表3
export function listStation3(userIds) {
  // 确保userId是数组
  const ids = Array.isArray(userIds) ? userIds : [userIds];

  return request({
    url: '/system/station/list3',
    method: 'get',
    params: {
      // 关键修改：手动展开数组为重复参数
      'csSysUserId[]': ids // 添加[]后缀，兼容更多后端框架
    },
    paramsSerializer: params => {
      // 自定义序列化（处理数组为重复参数）
      return qs.stringify(params, { arrayFormat: 'repeat' });
    }
  })
}

// 查询充电站信息列表3
export function selectUserIdByNickName(nickName) {
  return request({
    url: '/system/station/selectUserIdByNickName',
    method: 'get',
    params: {  // 使用params传递GET参数
      nickName: nickName  // 参数名需要与后端接口定义一致
    }
  })
}
